Jeu de la vie
Le jeu de la vie est un automate cellulaire dont les règles ont été
définies par J. Conway en 1970. L'état de l'automate à l'étape n est
uniquement fonction de son état à l'étape n − 1. L'évolution de l'état
d'une cellule dépend de l'état de ses 8 plus proches voisins.
Dans l'automate de Conway, les règles sont les suivantes :
* Une cellule vide à l'étape n − 1 et ayant exactement 3 voisins sera occupée à l'étape suivante. (naissance liée à un environnement optimal)
* Une cellule occupée à l'étape n − 1 et ayant 2 ou 3 voisins
sera maintenue à l'étape n sinon elle est vidée. (destruction par
désertification ou surpopulation)
C'est l'analogie entre ces règles et certains critères d'évolution de
populations de bactéries qui a conduit à donner à cet automate le nom de
jeu de la vie.
Utilisation :
Dans sa version standard, l'automate se déroule sur un plan
infini. Dans ce programme, il est programmé sur un tore. La ligne
supérieure est considérée comme jointive de la ligne inférieure, la
colonne de gauche est jointive avec celle de droite.
Commandes
Liste de droite : Elle permet de définir le nombre de cellules étudiées.
Boutons : Le bouton [Départ], [Stop] démarre et arrête l'animation. Le slider modifie la vitesse de l'animation.
Liste de gauche : Elle permet la sélection de la situation initiale.
En mode Aléatoire le tableau est rempli de façon équiprobable par des cellules occupées et des cellules vides.
En mode Utilisateur le tableau initial est vide. Un
click dans une case avec le bouton gauche de la souris peuple cette
cellule ; un nouveau click la vide.
Les autres choix présentent des configurations spécifiques.
Le mode stable présente des configurations qui ne peuvent pas évoluer.
Les glisseurs sont des configurations périodiques qui
se déplacent. Le plus simple est un ensemble de 5 cellules qui se
retrouve identique mais déplacé toutes les 4 générations.
Les oscillateurs sont des systèmes périodiques.
La ligne est formée d'un nombre aléatoire (compris entre 3 et 12) de cases juxtaposées.
Le moulin est un oscillateur simple.
Le canon expulse en continu des glisseurs à 5 cellules
qui s'éloignent dans une direction parallèle à une diagonale. De fait de
la programmation sur un tore et non sur un plan infini, il faut arrêter
à la 150ieme itération car un glisseur vient détruire le canon.
Après un certain nombre de générations, on obtient soit une
configuration stable (parfois vide) et l'animation est alors arrêtée
soit une configuration périodique.
Deux compteurs indiquent le numéro de la génération affichée et le nombre de cellules occupées.
Il faut cliquer sur le bouton [Départ] pour lancer l'animation.
Le jeu de la vie n'est pas difficile à programmer et constitue un bon exercice pour manipuler tableaux, tests et commandes graphiques. Consulter par exemple la revue "Pour la Science" de juin 1982.